package edu.hwadee.BEIS.entity;
// default package

import java.sql.Timestamp;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import org.hibernate.annotations.GenericGenerator;

/**
 * MajorTeacherSituation entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "major_teacher_situation", catalog = "beis")

public class MajorTeacherSituation implements java.io.Serializable {

	// Fields

	private Integer majorTeacherStatuationId;
	private SchoolBasicInfor schoolBasic;
	private String majorName;
	private Integer teacherCount;
	private Integer middleHighProfessionalTitleCount;
	private Integer majorSchoolProfessionalLeaderCount;
	private Integer majorBackboneTeacherCount;
	private Integer majorDoubleTypeTeacherCount;
	private Integer majorAboveUndergraduateTeacherCount;
	private Integer majorGraduateTeacherCount;
	private Integer majorUnderProvinceTrainTeacherCount;
	private Integer majorAboveProvinceTrainTeacherCount;
	private Integer nationalTrainTeacherCount;
	private Integer foreignTrainTeacherCount;
	private Integer techniciansQualifiedCount;
	private Integer teacherToEnterpriseCount;
	private Short countyAuditStatus;
	private Short cityAuditStatus;
	private Timestamp modifyTime;

	// Constructors

	/** default constructor */
	public MajorTeacherSituation() {
	}

	/** full constructor */
	public MajorTeacherSituation(SchoolBasicInfor schoolBasic, String majorName, Integer teacherCount,
			Integer middleHighProfessionalTitleCount, Integer majorSchoolProfessionalLeaderCount,
			Integer majorBackboneTeacherCount, Integer majorDoubleTypeTeacherCount,
			Integer majorAboveUndergraduateTeacherCount, Integer majorGraduateTeacherCount,
			Integer majorUnderProvinceTrainTeacherCount, Integer majorAboveProvinceTrainTeacherCount,
			Integer nationalTrainTeacherCount, Integer foreignTrainTeacherCount, Integer techniciansQualifiedCount,
			Integer teacherToEnterpriseCount, Short countyAuditStatus, Short cityAuditStatus, Timestamp modifyTime) {
		this.schoolBasic = schoolBasic;
		this.majorName = majorName;
		this.teacherCount = teacherCount;
		this.middleHighProfessionalTitleCount = middleHighProfessionalTitleCount;
		this.majorSchoolProfessionalLeaderCount = majorSchoolProfessionalLeaderCount;
		this.majorBackboneTeacherCount = majorBackboneTeacherCount;
		this.majorDoubleTypeTeacherCount = majorDoubleTypeTeacherCount;
		this.majorAboveUndergraduateTeacherCount = majorAboveUndergraduateTeacherCount;
		this.majorGraduateTeacherCount = majorGraduateTeacherCount;
		this.majorUnderProvinceTrainTeacherCount = majorUnderProvinceTrainTeacherCount;
		this.majorAboveProvinceTrainTeacherCount = majorAboveProvinceTrainTeacherCount;
		this.nationalTrainTeacherCount = nationalTrainTeacherCount;
		this.foreignTrainTeacherCount = foreignTrainTeacherCount;
		this.techniciansQualifiedCount = techniciansQualifiedCount;
		this.teacherToEnterpriseCount = teacherToEnterpriseCount;
		this.countyAuditStatus = countyAuditStatus;
		this.cityAuditStatus = cityAuditStatus;
		this.modifyTime = modifyTime;
	}

	// Property accessors
	@GenericGenerator(name = "generator", strategy = "increment")
	@Id
	@GeneratedValue(generator = "generator")

	@Column(name = "majorTeacherStatuation_id", unique = true, nullable = false)

	public Integer getMajorTeacherStatuationId() {
		return this.majorTeacherStatuationId;
	}

	public void setMajorTeacherStatuationId(Integer majorTeacherStatuationId) {
		this.majorTeacherStatuationId = majorTeacherStatuationId;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "school_id", nullable = false)

	public SchoolBasicInfor getSchoolBasic() {
		return this.schoolBasic;
	}

	public void setSchoolBasic(SchoolBasicInfor schoolBasic) {
		this.schoolBasic = schoolBasic;
	}

	@Column(name = "major_name", nullable = false, length = 50)

	public String getMajorName() {
		return this.majorName;
	}

	public void setMajorName(String majorName) {
		this.majorName = majorName;
	}

	@Column(name = "teacher_count", nullable = false)

	public Integer getTeacherCount() {
		return this.teacherCount;
	}

	public void setTeacherCount(Integer teacherCount) {
		this.teacherCount = teacherCount;
	}

	@Column(name = "middlehighprofessionaltitle_count", nullable = false)

	public Integer getMiddleHighProfessionalTitleCount() {
		return this.middleHighProfessionalTitleCount;
	}

	public void setMiddleHighProfessionalTitleCount(Integer middleHighProfessionalTitleCount) {
		this.middleHighProfessionalTitleCount = middleHighProfessionalTitleCount;
	}

	@Column(name = "majorschoolprofessionalleader_count", nullable = false)

	public Integer getMajorSchoolProfessionalLeaderCount() {
		return this.majorSchoolProfessionalLeaderCount;
	}

	public void setMajorSchoolProfessionalLeaderCount(Integer majorSchoolProfessionalLeaderCount) {
		this.majorSchoolProfessionalLeaderCount = majorSchoolProfessionalLeaderCount;
	}

	@Column(name = "majorbackboneteacher_count", nullable = false)

	public Integer getMajorBackboneTeacherCount() {
		return this.majorBackboneTeacherCount;
	}

	public void setMajorBackboneTeacherCount(Integer majorBackboneTeacherCount) {
		this.majorBackboneTeacherCount = majorBackboneTeacherCount;
	}

	@Column(name = "majordoubletypeteacher_count", nullable = false)

	public Integer getMajorDoubleTypeTeacherCount() {
		return this.majorDoubleTypeTeacherCount;
	}

	public void setMajorDoubleTypeTeacherCount(Integer majorDoubleTypeTeacherCount) {
		this.majorDoubleTypeTeacherCount = majorDoubleTypeTeacherCount;
	}

	@Column(name = "majoraboveundergraduateteacher_count", nullable = false)

	public Integer getMajorAboveUndergraduateTeacherCount() {
		return this.majorAboveUndergraduateTeacherCount;
	}

	public void setMajorAboveUndergraduateTeacherCount(Integer majorAboveUndergraduateTeacherCount) {
		this.majorAboveUndergraduateTeacherCount = majorAboveUndergraduateTeacherCount;
	}

	@Column(name = "majorgraduateteacher_count", nullable = false)

	public Integer getMajorGraduateTeacherCount() {
		return this.majorGraduateTeacherCount;
	}

	public void setMajorGraduateTeacherCount(Integer majorGraduateTeacherCount) {
		this.majorGraduateTeacherCount = majorGraduateTeacherCount;
	}

	@Column(name = "majorunderprovincetrainteacher_count", nullable = false)

	public Integer getMajorUnderProvinceTrainTeacherCount() {
		return this.majorUnderProvinceTrainTeacherCount;
	}

	public void setMajorUnderProvinceTrainTeacherCount(Integer majorUnderProvinceTrainTeacherCount) {
		this.majorUnderProvinceTrainTeacherCount = majorUnderProvinceTrainTeacherCount;
	}

	@Column(name = "majoraboveprovincetrainteacher_count", nullable = false)

	public Integer getMajorAboveProvinceTrainTeacherCount() {
		return this.majorAboveProvinceTrainTeacherCount;
	}

	public void setMajorAboveProvinceTrainTeacherCount(Integer majorAboveProvinceTrainTeacherCount) {
		this.majorAboveProvinceTrainTeacherCount = majorAboveProvinceTrainTeacherCount;
	}

	@Column(name = "nationaltrainteacher_count", nullable = false)

	public Integer getNationalTrainTeacherCount() {
		return this.nationalTrainTeacherCount;
	}

	public void setNationalTrainTeacherCount(Integer nationalTrainTeacherCount) {
		this.nationalTrainTeacherCount = nationalTrainTeacherCount;
	}

	@Column(name = "foreigntrainteacher_count", nullable = false)

	public Integer getForeignTrainTeacherCount() {
		return this.foreignTrainTeacherCount;
	}

	public void setForeignTrainTeacherCount(Integer foreignTrainTeacherCount) {
		this.foreignTrainTeacherCount = foreignTrainTeacherCount;
	}

	@Column(name = "techniciansqualified_count", nullable = false)

	public Integer getTechniciansQualifiedCount() {
		return this.techniciansQualifiedCount;
	}

	public void setTechniciansQualifiedCount(Integer techniciansQualifiedCount) {
		this.techniciansQualifiedCount = techniciansQualifiedCount;
	}

	@Column(name = "teachertoenterprise_count", nullable = false)

	public Integer getTeacherToEnterpriseCount() {
		return this.teacherToEnterpriseCount;
	}

	public void setTeacherToEnterpriseCount(Integer teacherToEnterpriseCount) {
		this.teacherToEnterpriseCount = teacherToEnterpriseCount;
	}

	@Column(name = "county_auditstatus", nullable = false)

	public Short getCountyAuditStatus() {
		return this.countyAuditStatus;
	}

	public void setCountyAuditStatus(Short countyAuditStatus) {
		this.countyAuditStatus = countyAuditStatus;
	}

	@Column(name = "city_auditstatus", nullable = false)

	public Short getCityAuditStatus() {
		return this.cityAuditStatus;
	}

	public void setCityAuditStatus(Short cityAuditStatus) {
		this.cityAuditStatus = cityAuditStatus;
	}

	@Column(name = "modify_time", nullable = false, length = 19)

	public Timestamp getModifyTime() {
		return this.modifyTime;
	}

	public void setModifyTime(Timestamp modifyTime) {
		this.modifyTime = modifyTime;
	}

}